查看原文
其他

臺灣精益老專家:看板的系統思維

2017-09-11 李智桦 DevOps时代

当看板贯穿在各个理论之间时,不禁让我们担心容易被误导的全貌

系统思维就是把认识对象作为系统 ,从系统和要素,要素和要素,系统和环境的相互联系,相互作用中综合地考察认识对象的一种思维方法。系统思维以系统论为思维基本模式的思维形态,它不同于创造思维或形象思维等本能思维形态。系统思维能极大地简化人们对事物的认知,给我们带来整体观。

- 维基百科

当你看不见全貌时,就容易:讲不明白,说不清楚, 然后学习的时候快不起来 。 


 看板为什需要有系统思维?

实践看板可以让你看得见流程,让你看见了自己原来在工作上有这么多浪费,但其实它是排除了许多细节资讯,让你的目光能专注在大的工作事项上。这是一种消除浪费的方式,也就是所谓的看见浪费,就能消除浪费。但其实让你能看见限制才是它真正的目的(要在透过分析前置时间来捕抓最大产能)。但这么做是有风险的, 因为看板太容易让人落入线性的思维方式了。

举个例子:当我们看到项目在时间上有来不及的现象时,你很容易就会想那就多放几个工程师进去,就能多吃几张工作单(Tasks)到开发的栏位里去了,这样开发的速度不就能相对的变快了吗? 这便是一种单纯的线性思维方式, 一种「基于一分耕耘,一分收获的思维 」方式 ,那二分耕耘是不是就应该有二分收获了呢?如果你这么想,你就会认为解答就是多投入几个人力来消化工作单不就成了吗。但这是一种错误的做法!

请务必变换个思维方式,因为在真实的世界里,产能是不能用等值累加的方式来计算的,事实是:当你增加人手时,产能反而会因为增加人手的初期先行下降(因为新加入的人员需要通过时间来学习才能像其他人有所产能,在这段新人需要熟悉的环境、学习新技能的时间里(所谓的前置时间),你反而必须浪费最熟这个系统的人来担任老师,负责教会新手,因此初期产能反而会不升反降),产能要经过一段时间后产可能上升。

项目来不及时,不要急着增加人手,先弄清楚真正的问题点在哪?

- 人月神话


 因果回馈图+ 提问

问对问题可以提供我们正确的思维路线,也能够触发自己反思的机会。它会让我们看得、想得更清楚,但我们要如何来避免落入线性思维呢? 

系统动力学之父Jay Forrest为此发明了因果回馈图(CLD: Casual feedback Loop Diagram)来解决这个问题。

运用正向因果回馈图来判定系统的滚雪球效应。用负向或称之为平衡回馈图来判定造成系统平衡的因果元素。再加上时间延迟的考量因素,让我们得以分析并思考问题的解决模式。这便是采用因果回馈图模式来进行系统思维的分析工作。



 解题前应该做的系统思维

我做顾问的时候,经常会驻足在团队后方,远远的看着他们进行站立会议。一旁偶而也会有主管来询问,这么作的目的是表达对Scrum Master的信任,而采用远观的目的则是想更客观的来思考一些问题。因为看板很容易让人落入线性思维,因此想再退一步来查看全貌。通常我在想的是...

1. 别被表象所迷惑了

跟自己说,看到的只是冰山的一角。宛如萨提尔女士的冰山理论所言,人们被观察到的外部行为,只是冰山浮出水面的一小部份,隐含在水面下的才是内在的应对,情绪,观点,期待,渴望及真正的自我。而系统思维最有意思的一部分便是他会随着时间变化而有所改变,他可能成长,停滞,衰退,震荡甚至随机的改变进化。因此时时的收集资讯,鉴古知今,便成了探索系统结构的基本动作,现在的人都称这种行为:大数据分析。

2. 在非线性的世界里,不要用线性的思维模式

这是我们依据看板来做决策时最容易陷入的麻烦之一,就是用一种线性的思考模式来研判问题,例如:在土壤里施100磅肥料,收成可增加10斗;如果施加200磅肥料,收成是不是可以增加20斗呢?那,300磅肥料,收成便可增加为30斗呢? 

结论当然不是这么回事。真的这么做了,甚至可能会彻底破坏土壤的有机质,以至于什么再也长不出来了! 

在真实世界里,事情往往是多方牵连的,也就是非线性关系的,也就是说我们必须用因果关系来推论反馈的原因和现象。此时,好的提问以及采用因果回馈图可能是避开线性思维的最佳方法

3. 恰当的划定边界

有所取舍,确实最复杂的地方经常都会出现在边界上,但这些个边界其实都是人为的定义,是我们将系统硬做区分的,这是简化的来源也是基础,看板便是这样的一个系统,我们简化了许多资讯,让实体看板可以刚刚好显示足够的信息,这样做可以让我们看得更清楚,但也预作了假设,因此必须恰当的划定边界。

4. 看清各种限制因素

我们通常以单一的原因会引发单一的事件来进行思考。现在这个问题,可能就是先前我们那样做所引发的后果。这是我们眼界的浅短性所致,但是现实的生活里,往往是多个原因一同引发多个结果的复杂现象,因此挑选相关因子并做好衡量的工作,就成了决策成败的一大依据了。

这一点在近代的AI人工智能上也可能会有重大突破。但前题依然是我们要掌握正确的因素,才足以问对问题,否则再好的人工智能也很难给出好的回答。

5. 无所不在的时间延迟

在系统中每个存量都是一个延迟,这是我在凝视看板时最害怕的一件事了, 那便是「 时间延迟」,在真实世界里处处都是时间延迟,延迟时间的长短可以彻底的改变整个系统的表现,但我们在看板上因为它无法受控制,所以通常只是轻易的给上“红,黄,绿灯”来做依据判断便是了,因为它可能带来风险,所以标记它是一个风险,实在是一种神话级的处理方式。 

进行「衡量」可能是较好的一种处理方式(因为这样便有了机率的依据了)。但究竟该或不该花时间去做衡量可能才是关键的困难点。

6. 有限理性

我们都想做出理性的好决策,但先期的决策,不说你也知道它隐含着大量的不确定性,因此通常可以称它为猜测。因此尽量的收集资讯,做到自以为合理的决策便成了努力要达成的目标。敏捷在处理这个问题的方法是迭代与持续改进,若能越改越好自然可以逐渐趋近目标。反之,则应该讨论是否是认知太贫乏了,便需要一种跳脱的思维模式来支撑了。


 结论

系统思维的目的是在透过对系统进行分析之后, 依靠寻找到的杠杆点来进行事半功倍的解题。

作为一位专业的顾问,经常是在开发团队出状况的情况下才被请来解决难题的。人们总以为顾问是请来解决问题的,但实质上:身为一位资深顾问,必须跟你们说:「顾问只是请来让问题比较容易被解决的」。也就是说,真正解题的人还是要靠你们自己,顾问只是用较客观的角度,用经验来协助大家解题罢了而我们经常的解题方式,便是去寻找问题系统的“ 杠杆点 ” 。一种让我们能够正确的施力,并换来巨大成效的做法罢了! 

上图是我的建议,最重要的三点是:

1)制定简单的规范,让团队经常做到自我管理;

2)形成一个自组织的团队;

3)并善用交互及外来的回馈。

让信息能够快速地在组织内流动,它便能经常可以化大问题成为小问题,让小问题成为生活的插曲罢了。

本文是李智桦老师在DevOpsDays 台北站的演讲总结,PPT下载地址:

链接: https://pan.baidu.com/s/1boQiygZ 

密码: gdwp



点击“阅读原文”,关注活动官网

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存